Microsoft Visual Studio

Microsoft Visual Studio
The Microsoft Visual Studio logo.
Microsoft Visual Studio 2010 RTM
Visual Studio 2010 RTM editing a WPF application
Developer(s) Microsoft
Written in C++, C#[1]
Operating system Microsoft Windows
Available in English, French, German, Italian, Japanese, Korean, Spanish, Russian, Chinese (Simplified), Chinese (Traditional),
Type Integrated Development Environment
License Microsoft EULA
Website www.microsoft.com/visualstudio

Microsoft Visual Studio is an integrated development environment (IDE) from Microsoft. It can be used to develop console and graphical user interface applications along with Windows Forms applications, web sites, web applications, and web services in both native code together with managed code for all platforms supported by Microsoft Windows, Windows Mobile, Windows CE, .NET Framework, .NET Compact Framework and Microsoft Silverlight.

Visual Studio includes a code editor supporting IntelliSense as well as code refactoring. The integrated debugger works both as a source-level debugger and a machine-level debugger. Other built-in tools include a forms designer for building GUI applications, web designer, class designer, and database schema designer. It accepts plug-ins that enhance the functionality at almost every level—including adding support for source-control systems (like Subversion and Visual SourceSafe) and adding new toolsets like editors and visual designers for domain-specific languages or toolsets for other aspects of the software development lifecycle (like the Team Foundation Server client: Team Explorer).

Visual Studio supports different programming languages by means of language services, which allow the code editor and debugger to support (to varying degrees) nearly any programming language, provided a language-specific service exists. Built-in languages include C/C++ (via Visual C++), VB.NET (via Visual Basic .NET), C# (via Visual C#), and F# (as of Visual Studio 2010[2]). Support for other languages such as M, Python, and Ruby among others is available via language services installed separately. It also supports XML/XSLT, HTML/XHTML, JavaScript and CSS. Individual language-specific versions of Visual Studio also exist which provide more limited language services to the user: Microsoft Visual Basic, Visual J#, Visual C#, and Visual C++.

Microsoft provides "Express" editions of its Visual Studio 2010 components Visual Basic, Visual C#, Visual C++, and Visual Web Developer at no cost. Visual Studio 2010, 2008 and 2005 Professional Editions, along with language-specific versions (Visual Basic, C++, C#, J#) of Visual Studio 2005 are available for free to students as downloads via Microsoft's DreamSpark program. The 90-day trial version of Visual Studio can be downloaded by the general public at no cost.

Contents

Architecture

Visual Studio does not support any programming language, solution or tool intrinsically. Instead, it allows plugging in various types of functionality. Specific functionality is coded as a VSPackage. When installed, the functionality is available as a Service. The IDE provides three services: SVsSolution, which provides the ability to enumerate projects and solutions; SVsUIShell, which provides windowing and UI functionality (including tabs, toolbars and tool windows); and SVsShell, which deals with registration of VSPackages. In addition, the IDE is also responsible for coordinating and enabling communication between services.[3] All editors, designers, project types and other tools are implemented as VSPackages. Visual Studio uses COM to access the VSPackages. The Visual Studio SDK also includes the Managed Package Framework (MPF), which is a set of managed wrappers around the COM-interfaces that allow the Packages to be written in any CLI compliant language.[4] However, MPF does not provide all the functionality exposed by the Visual Studio COM interfaces.[5] The services can then be consumed for creation of other packages, which add functionality to the Visual Studio IDE.

Support for programming languages is added by using a specific VSPackage called a Language Service. A language service defines various interfaces which the VSPackage implementation can implement to add support for various functionalities.[6] Functionalities that can be added this way include syntax coloring, statement completion, brace matching, parameter information tooltips, member lists and error markers for background compilation.[6] If the interface is implemented, the functionality will be available for the language. Language services are to be implemented on a per-language basis. The implementations can reuse code from the parser or the compiler for the language.[6] Language services can be implemented either in native code or managed code. For native code, either the native COM interfaces or the Babel Framework (part of Visual Studio SDK) can be used.[7] For managed code, the MPF includes wrappers for writing managed language services.[8]

Visual Studio does not include any source control support built in but it defines the MSSCCI (Microsoft Source Code Control Interface) by implementing which source control systems can integrate with the IDE.[9] MSSCCI defines a set of functions that are used to implement various source control functionality.[10] MSSCCI was first used to integrate Visual SourceSafe with Visual Studio 6.0 but was later opened up via the Visual Studio SDK. Visual Studio .NET 2002 used MSSCCI 1.1, and Visual Studio .NET 2003 used MSSCCI 1.2. Both Visual Studio 2005 and 2008 use MSSCCI Version 1.3, which adds support for rename and delete propagation as well as asynchronous opening.[9]

Visual Studio supports running multiple instances of the environment (each with its own set of VSPackages). The instances use different registry hives (see MSDN's definition of the term "registry hive" in the sense used here) to store their configuration state and are differentiated by their AppId (Application ID). The instances are launched by an AppId-specific .exe that selects the AppId, sets the root hive and launches the IDE. VSPackages registered for one AppId are integrated with other VSPackages for that AppId. The various product editions of Visual Studio are created using the different AppIds. The Visual Studio Express edition products are installed with their own AppIds, but the Standard, Professional and Team Suite products share the same AppId. Consequently, one can install the Express editions side-by-side with other editions, unlike the other editions which update the same installation. The professional edition includes a superset of the VSPackages in the standard edition and the team suite includes a superset of the VSPackages in both other editions. The AppId system is leveraged by the Visual Studio Shell in Visual Studio 2008.[11]

Features

Code editor

Visual Studio, like any other IDE, includes a code editor that supports syntax highlighting and code completion using IntelliSense for not only variables, functions and methods but also language constructs like loops and queries.[12] IntelliSense is supported for the included languages, as well as for XML and for Cascading Style Sheets and JavaScript when developing web sites and web applications.[13][14] Autocomplete suggestions are popped up in a modeless list box, overlaid on top of the code editor. In Visual Studio 2008 onwards, it can be made temporarily semi-transparent to see the code obstructed by it.[12] The code editor is used for all supported languages.

The Visual Studio code editor also supports setting bookmarks in code for quick navigation. Other navigational aids include collapsing code blocks and incremental search, in addition to normal text search and regex search.[15] The code editor also includes a multi-item clipboard and a task list.[15] The code editor supports code snippets, which are saved templates for repetitive code and can be inserted into code and customized for the project being worked on. A management tool for code snippets is built in as well. These tools are surfaced as floating windows which can be set to automatically hide when unused or docked to the side of the screen. The Visual Studio code editor also supports code refactoring including parameter reordering, variable and method renaming, interface extraction and encapsulation of class members inside properties, among others.

Visual Studio features background compilation (also called incremental compilation).[16][17] As code is being written, Visual Studio compiles it in the background in order to provide feedback about syntax and compilation errors, which are flagged with a red wavy underline. Warnings are marked with a green underline. Background compilation does not generate executable code, since it requires a different compiler than the one used to generate executable code.[18] Background compilation was initially introduced with Microsoft Visual Basic but has now been expanded for all included languages.[17]

Debugger

Visual Studio includes a debugger that works both as a source-level debugger and as a machine-level debugger. It works with both managed code as well as native code and can be used for debugging applications written in any language supported by Visual Studio. In addition, it can also attach to running processes and monitor and debug those processes.[19] If source code for the running process is available, it displays the code as it is being run. If source code is not available, it can show the disassembly. The Visual Studio debugger can also create memory dumps as well as load them later for debugging.[20] Multi-threaded programs are also supported. The debugger can be configured to be launched when an application running outside the Visual Studio environment crashes.

The debugger allows setting breakpoints (which allow execution to be stopped temporarily at a certain position) and watches (which monitor the values of variables as the execution progresses).[21] Breakpoints can be conditional, meaning they get triggered when the condition is met. Code can be stepped over, i.e., run one line (of source code) at a time.[22] It can either step into functions to debug inside it, or step over it, i.e., the execution of the function body isn't available for manual inspection.[22] The debugger supports Edit and Continue, i.e., it allows code to be edited as it is being debugged (32 bit only; not supported in 64 bit).[23] When debugging, if the mouse pointer hovers over any variable, its current value is displayed in a tooltip ("data tooltips"), where it can also be modified if desired. During coding, the Visual Studio debugger lets certain functions be invoked manually from the Immediate tool window. The parameters to the method are supplied at the Immediate window.[24]

Designer

Visual Studio includes a host of visual designers to aid in the development of applications. These tools include:

Visual Studio Web Designer in code editor view
Visual Studio 2005 in Class Designer view
Windows Forms Designer
The Windows Forms designer is used to build GUI applications using Windows Forms. It includes a palette of UI widgets and controls (including buttons, progress bars, labels, layout containers and other controls) that can be dragged and dropped on a form surface. Layout can be controlled by housing the controls inside other containers or locking them to the side of the form. Controls that display data (like textbox, list box, grid view, etc.) can be data-bound to data sources like databases or queries. The UI is linked with code using an event-driven programming model. The designer generates either C# or VB.NET code for the application.
WPF Designer
The WPF designer, codenamed Cider,[25] was introduced with Visual Studio 2008. Like the Windows Forms designer it supports the drag and drop metaphor. It is used to author user interfaces targeting Windows Presentation Foundation. It supports all WPF functionality including databinding and automatic layout management. It generates XAML code for the UI. The generated XAML file is compatible with Microsoft Expression Design, the designer-oriented product. The XAML code is linked with code using a code-behind model.
Web designer/development
Visual Studio also includes a web-site editor and designer that allows web pages to be authored by dragging and dropping widgets. It is used for developing ASP.NET applications and supports HTML, CSS and JavaScript. It uses a code-behind model to link with ASP.NET code. From Visual Studio 2008 onwards, the layout engine used by the web designer is shared with Microsoft Expression Web. There is also ASP.NET MVC support for MVC technology as a separate download[26] and Dynamic Data project available from Microsoft[27]
Class designer
The Class Designer is used to author and edit the classes (including its members and their access) using UML modeling. The Class Designer can generate C# and VB.NET code outlines for the classes and methods. It can also generate class diagrams from hand-written classes.
Data designer
The data designer can be used to graphically edit database schemas, including typed tables, primary and foreign keys and constraints. It can also be used to design queries from the graphical view.
Mapping designer
From Visual Studio 2008 onwards, the mapping designer is used by LINQ to SQL to design the mapping between database schemas and the classes that encapsulate the data. The new solution from ORM approach, ADO.NET Entity Framework, replaces and improves the old technology.

Other tools

Open Tabs Browser
The open tabs browser is used to list all open tabs and to switch between them. It is invoked using CTRL+TAB.
Properties Editor
The Properties Editor tool is used to edit properties in a GUI pane inside Visual Studio. It lists all available properties (both read-only and those which can be set) for all objects including classes, forms, web pages and other items.
Object Browser
The Object Browser is a namespace and class library browser for Microsoft .NET. It can be used to browse the namespaces (which are arranged hierarchically) in managed assemblies. The hierarchy may or may not reflect the organization in the file system.
Solution Explorer
In Visual Studio parlance, a solution is a set of code files and other resources that are used to build an application. The files in a solution are arranged hierarchically, which might or might not reflect the organization in the file system. The Solution Explorer is used to manage and browse the files in a solution.
Team Explorer
Team Explorer is used to integrate the capabilities of Team Foundation Server, the Revision Control System into the IDE (and the basis for Microsoft's CodePlex hosting environment for open source projects). In addition to source control it provides the ability to view and manage individual work items (including bugs, tasks and other documents) and to browse TFS statistics. It is included as part of a TFS install and is also available as a download for Visual Studio 2005[28] and 2008.[29] Team Explorer is also available as a stand-alone environment solely to access TFS services.
Data Explorer
Data Explorer is used to manage databases on Microsoft SQL Server instances. It allows creation and alteration of database tables (either by issuing T-SQL commands or by using the Data designer). It can also be used to create queries and stored procedures, with the latter in either T-SQL or in managed code via SQL CLR. Debugging and IntelliSense support is available as well.
Server Explorer
The Server Explorer tool is used to manage database connections on an accessible computer. It is also used to browse running Windows Services, performance counters, Windows Event Log and message queues and use them as datasource.[30]
Dotfuscator Software Services Community Edition
Visual Studio includes a free 'light' version of PreEmptive Solutions' Dotfuscator product for code obfuscation and application-size reduction.[31] Starting with Visual Studio 2010, this version of Dotfuscator will include Runtime Intelligence capabilities that allow authors to gather end-user usage, performance, and stability information from their applications running in production.[32]

Extensibility

Visual Studio allows developers to write extensions for Visual Studio to extend its capabilities. These extensions "plug into" Visual Studio and extend its functionality. Extensions come in the form of macros, add-ins, and packages. Macros represent repeatable tasks and actions that developers can record programmatically for saving, replaying, and distributing. Macros, however, cannot implement new commands or create tool windows. They are written using Visual Basic and are not compiled.[5] Add-Ins provide access to the Visual Studio object model and can interact with the IDE tools. Add-Ins can be used to implement new functionality and can add new tool windows. Add-Ins are plugged in to the IDE via COM and can be created in any COM-compliant languages.[5] Packages are created using the Visual Studio SDK and provide the highest level of extensibility. They can create designers and other tools, as well as integrate other programming languages. The Visual Studio SDK provides unmanaged APIs as well as a managed API to accomplish these tasks. However, the managed API isn't as comprehensive as the unmanaged one.[5] Extensions are supported in the Standard (and higher) versions of Visual Studio 2005. Express Editions do not support hosting extensions.

Visual Studio 2008 introduced the Visual Studio Shell that allows for development of a customized version of the IDE. The Visual Studio Shell defines a set of VSPackages that provide the functionality required in any IDE. On top of that, other packages can be added to customize the installation. The Isolated mode of the shell creates a new AppId where the packages are installed. These are to be started with a different executable. It is aimed for development of custom development environments, either for a specific language or a specific scenario. The Integrated mode installs the packages into the AppId of the Professional/Standard/Team System editions, so that the tools integrate into these editions.[11] The Visual Studio Shell is available as a free download.

After the release of Visual Studio 2008, Microsoft created the Visual Studio Gallery. It serves as the central location for posting information about extensions to Visual Studio. Community developers as well as commercial developers can upload information about their extensions to Visual Studio .NET 2002 through Visual Studio 2010. Users of the site can rate and review the extensions to help assess the quality of extensions being posted. RSS feeds to notify users on updates to the site and tagging features are also planned.[33]

Supported products

Included products

Microsoft Visual C++
Microsoft Visual C++ is Microsoft's implementation of the C and C++ compiler and associated languages-services and specific tools for integration with the Visual Studio IDE. It can compile either in C mode or C++ mode. For C, it follows the ISO C standard with parts of C99 spec along with MS-specific additions in the form of libraries.[34] For C++, it follows the ANSI C++ spec along with a few C++0x features.[35] It also supports the C++/CLI spec to write managed code, as well as mixed-mode code (a mix of native and managed code). Microsoft positions Visual C++ for development in native code or in code that contains both native as well as managed components. Visual C++ supports COM as well as the MFC library. For MFC development, it provides a set of wizards for creating and customizing MFC boilerplate code, and creating GUI applications using MFC. Visual C++ can also use the Visual Studio forms designer to design UI graphically. Visual C++ can also be used with the Windows API. It also supports the use of intrinsic functions,[36] which are functions recognized by the compiler itself and not implemented as a library. Intrinsic functions are used to expose the SSE instruction set of modern CPUs. Visual C++ also includes the OpenMP (version 2.0) spec.[37]
Microsoft Visual C#
Microsoft Visual C#, Microsoft's implementation of the C# language, targets the .NET Framework, along with the language services that lets the Visual Studio IDE support C# projects. While the language services are a part of Visual Studio, the compiler is available separately as a part of the .NET Framework. The Visual C# 2008 compiler supports version 3.0 of the C# language specifications. Visual C# supports the Visual Studio Class designer, Forms designer, and Data designer among others.[38]
Microsoft Visual Basic
Microsoft Visual Basic is Microsoft's implementation of the VB.NET language and associated tools and language services. It was introduced with Visual Studio .NET (2002). Microsoft has positioned Visual Basic for Rapid Application Development. Visual Basic can be used to author both console applications as well as GUI applications. Like Visual C#, Visual Basic also supports the Visual Studio Class designer, Forms designer, and Data designer among others. Like C#, the VB.NET compiler is also available as a part of .NET Framework but the language services, that let VB.NET projects be developed with Visual Studio, are available as a part of the latter.
Microsoft Visual Web Developer
Microsoft Visual Web Developer is used to create web sites, web applications and web services using ASP.NET. Either C# or VB.NET languages can be used. Visual Web Developer can use the Visual Studio Web Designer to graphically design web page layouts.
Team Foundation Server
Included only with Visual Studio Team System, Team Foundation Server is intended for collaborative software development projects and acts as the server-side backend providing source control, data collection, reporting, and project-tracking functionality. It also includes the Team Explorer, the client tool for TFS services, which is integrated inside Visual Studio Team System.

Previous products

Visual FoxPro
Visual FoxPro is a data-centric object-oriented and procedural programming language produced by Microsoft. It derives from FoxPro (originally known as FoxBASE) which was developed by Fox Software beginning in 1984. Visual FoxPro is tightly integrated with its own relational database engine, which extends FoxPro's xBase capabilities to support SQL queries and data manipulation. Visual FoxPro is a full-featured, dynamic programming language that does not require the use of an additional general-purpose programming environment. Microsoft announced in 2007 that Visual FoxPro has been discontinued after version 9 Service Pack 2, but will remain supported until 2015.[39]
Visual SourceSafe
Microsoft Visual SourceSafe is a source control software package oriented towards small software-development projects. The SourceSafe database is a multi-user, multi-process file-system database, using the Windows file system database primitives to provide locking and sharing support. All versions are multi-user, using SMB (file server) networking.[40][41][42] However, with Visual SourceSafe 2005, other client–server modes were added, Lan Booster and VSS Internet (which used HTTP/HTTPS). Visual SourceSafe 6.0 was available as a stand-alone product[43] and was included with Visual Studio 6.0, and other products such as Office Developer Edition. Visual SourceSafe 2005 was available as a stand-alone product and included with the 2005 Team Suite. Team Foundation Server has superseded VSS as Microsoft's recommended platform for source control.
Microsoft Visual J++/Microsoft Visual J#
Microsoft Visual J++ was Microsoft's implementation of the Java language (with Microsoft-specific extensions) and associated language services. It was discontinued as a result of litigation from Sun Microsystems, and the technology was recycled into Visual J#, Microsoft's Java compiler for .NET Framework. J# was available with Visual Studio 2005 but has been discontinued in Visual Studio 2008.
Visual InterDev
Visual InterDev was used to create web applications using Microsoft Active Server Pages (ASP) technologies. It supports code completion and includes database server management tools. It has been replaced with Microsoft Visual Web Developer.

Editions

Microsoft Visual Studio is available in the following editions or SKU's:[44]

Visual Studio Express

Visual Studio Express Editions are a set of free lightweight individual IDEs which are provided as stripped-down versions of the Visual Studio IDE on a per-platform basis or per-language basis, i.e., it installs the development tools for the supported platforms (web, Windows, phone) or supported development languages (VB, C#) onto individual Visual Studio Shell AppIds. It includes only a small set of tools as compared to the other systems. It does not include support for plug-ins. x64 compilers are not included in the Visual Studio Express edition IDEs, but are available as part of a Windows Software Development Kit that can be installed separately.[45] Microsoft targets the Express IDEs at students and hobbyists. Express editions do not use the full MSDN Library but use the MSDN Essentials Library. The languages available as part of the Express IDEs are:[46]

Visual Studio LightSwitch

Microsoft Visual Studio LightSwitch is an IDE specifically tailored for creating line-of-business applications built on existing .NET technologies and Microsoft platforms. The applications produced are architecturally 3-tier: the user interface runs on Microsoft Silverlight; the logic and data-access tier is built on WCF RIA Services and Entity Framework, hosted in ASP.NET; and the primary data storage supports Microsoft SQL Server Express, Microsoft SQL Server and Microsoft SQL Azure. LightSwitch also supports other data sources including Microsoft SharePoint. LightSwitch includes graphical designers for designing entities and entity relationships, entity queries, and UI screens. Business logic may be written in either Visual Basic or Visual C#. The tool can be installed as a stand-alone SKU or as an integrated add-in to Visual Studio 2010 Professional and higher.[47]

Visual Studio Professional

Visual Studio Professional Edition provides an IDE for all supported development languages. As of Visual Studio 2010, the Standard edition was renamed to the Professional edition.[48] MSDN support is available as MSDN Essentials or the full MSDN library depending on licensing. It supports XML and XSLT editing, and can create deployment packages that only use ClickOnce and MSI. However, it does not include tools like Server Explorer or include integration with Microsoft SQL Server. Windows Mobile development support was included in Visual Studio 2005 Standard, however, with Visual Studio 2008, it is only available in Professional and higher editions. Windows Phone 7 development support was added to all editions in Visual Studio 2010. Development for all versions of Windows Mobile prior to Windows Mobile 7 is no longer supported in Visual Studio 2010.

Visual Studio Premium

Visual Studio Premium Edition includes the tools in Visual Studio Professional and augments them with other functionality such as Microsoft SQL Server integration (which allows databases to be created from within Visual Studio) and a remote debugger (for 2005 Editions) (that allows debugging a remote system from within Visual Studio debugger provided a debugging server is running on the remote system). Visual Studio Professional accepts all three extensibility mechanisms. As of Visual Studio 2010, the Professional edition was renamed to the Premium edition.[48]

Visual Studio Tools for Office

Visual Studio Tools for Office is an SDK and an add-in for Visual Studio that includes tools for developing for the Microsoft Office suite. Previously (for Visual Studio .NET 2003 and Visual Studio 2005) it was a separate SKU that supported only Visual C# and Visual Basic languages or was included in the Team Suite. With Visual Studio 2008, it is no longer a separate SKU but is included with Professional and higher editions. A separate runtime is required when deploying VSTO solutions.

Visual Studio Ultimate

Visual Studio Ultimate provides set of software and database development, collaboration, metrics, architecture, testing and reporting tools in addition to the features provided by Visual Studio Premium. As of Visual Studio 2010, the Team Suite edition was renamed to the Ultimate edition.[48] Visual Studio Ultimate offers a superset of toolsets based on the Application Lifecycle Management (ALM) role it is being used for.

Visual Studio Team System

Prior to Visual Studio 2010, Visual Studio Team System provided four role-specific editions are:[49]

The combined functionality of the four Team System Editions is provided in a Team Suite Edition. The Database Edition, codenamed "DataDude", was initially released as a separate edition after Visual Studio 2005's initial release. It is included with Visual Studio 2008 as a separate edition, but Microsoft did roll its functionality into the Premium Edition with Visual Studio 2010.[50]

Test Professional

Visual Studio Test Professional is an edition which was introduced with Visual Studio 2010. It's focus is aimed at the dedicated tester role and includes support for the management of test environments, the ability to start and report on tests and to connect to Team Foundation Server. It does not include support for development or authoring of tests.[44]

Editions feature grid

Editions feature grid[44]
Product Extensions Setup Projects MSDN Integration Debugging/Profiling Static Analysis IntelliTrace Unit Test Code Coverage Coded UI Test Test Impact Analysis Load Testing Lab Management Architecture and Modelling Mobile Development
Express No Limited Essentials Yes No No No No No No No No No Windows Phone 7 only
Professional Yes Yes Essentials or Full Yes No No Yes No No No No No No Windows Phone 7 only
Premium Yes Yes Full Yes Yes No Yes Yes Yes Yes No No ReadOnly Yes
Ultimate Yes Yes Full Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes
Test Professional No No Full No No No No No No Yes No Yes No No

Version history

Visual Studio 97

Microsoft first released Visual Studio (codenamed "Boston")[51] in 1997, bundling many of its programming tools together for the first time. Visual Studio 97 came in two editions, Professional and Enterprise. It included Visual Basic 5.0 and Visual C++ 5.0, primarily for Windows programming; Visual J++ 1.1 for Java and Windows programming; and Visual FoxPro 5.0 for database, specifically xBase programming. It introduced Visual InterDev for creating dynamically generated web sites using Active Server Pages. A snapshot of the Microsoft Developer Network library was also included.

Visual Studio 97 was Microsoft's first attempt at using the same development environment for multiple languages. Visual C++, Visual J++, InterDev, and the MSDN Library all used one environment, called Developer Studio. Visual Basic and Visual FoxPro used separate environments.[11]

Visual Studio 6.0 (1998)

The next version, version 6.0 (codenamed Aspen, the ski resort in Colorado), was released in June 1998 and is the last version to run on the Windows 9x platform.[52] The version numbers of all of its constituent parts also moved to 6.0, including Visual J++ which jumped from 1.1, and Visual InterDev which was at 1.0. This version was the basis of Microsoft's development system for the next four years, as Microsoft transitioned their development focus to the .NET Framework.

Visual Studio 6.0 was the last version to include the COM-based version of Visual Basic; subsequent versions would include the version of the language based on .NET. It was also the last version to include Visual J++, which Microsoft removed as part of a settlement with Sun Microsystems that required Microsoft to stop producing programming tools that targeted the Java Virtual Machine.

Visual Basic, Visual C++, and Visual FoxPro had separate IDEs, while Visual J++ and Visual InterDev shared a common new environment. This new IDE was designed with extensibility in mind, and would go on (after several internal revisions) to become the common environment for all languages with the release of Visual Studio .NET.[11] Visual Studio 6.0 was also the last version to include Visual FoxPro.

Visual Studio 6.0 came in two editions: Professional and Enterprise [53] . The Enterprise edition contained extra features not found in Professional edition, including:

Visual Studio .NET (2002)

The Microsoft Visual Studio .NET logo.

Microsoft released Visual Studio .NET, codenamed Rainier (for Washington's Mount Rainier), in February 2002 (the beta version was released via Microsoft Developer Network in 2001). The biggest change was the introduction of a managed code development environment using the .NET Framework. Programs developed using .NET are not compiled to machine language (like C++ is, for example) but instead to a format called Microsoft Intermediate Language (MSIL) or Common Intermediate Language (CIL). When an MSIL application executes, it is compiled while being executed into the appropriate machine language for the platform it is being executed on, thereby making code portable across several platforms. Programs compiled into MSIL can be executed only on platforms which have an implementation of Common Language Infrastructure. It is possible to run MSIL programs in Linux or Mac OS X using non-Microsoft .NET implementations like Mono and DotGNU.

This was the first version of Visual Studio to require an NT-based Windows platform.[54] The installer enforces this requirement.

Visual Studio .NET 2002 shipped in four editions: Academic, Professional, Enterprise Developer, and Enterprise Architect. Microsoft introduced C# (C-sharp), a new programming language, that targets .NET. It also introduced the successor to Visual J++ called Visual J#. Visual J# programs use Java's language-syntax. However, unlike Visual J++ programs, Visual J# programs can only target the .NET Framework, not the Java Virtual Machine that all other Java tools target.

Visual Basic changed drastically to fit the new framework, and the new version was called Visual Basic .NET. Microsoft also added extensions to C++, called Managed Extensions for C++, so that C++ programmers could create .NET programs.

Visual Studio .NET can produce applications targeting Windows (using the Windows Forms, part of the .NET Framework), the Web (using ASP.NET and Web Services) and, with an add-in, portable devices (using the .NET Compact Framework).

The Visual Studio .NET environment was rewritten to partially use .NET. All languages are unified under one environment. Compared to previous versions of Visual Studio, it has a cleaner interface and greater cohesiveness. It is also more customizable with tool windows that automatically hide when not in use. While Visual FoxPro 7 started out as part of Visual Studio 7, and early VS betas allowed debugging inside VFP-based DLLs, it was removed before release to follow its own development track.

The internal version number of Visual Studio .NET is version 7.0. Microsoft released Service Pack 1 for Visual Studio .NET 2002 in March, 2005.[55]

Visual Studio .NET 2003

In April 2003, Microsoft introduced a minor upgrade to Visual Studio .NET called Visual Studio .NET 2003, codenamed Everett (for the city of the same name). It includes an upgrade to the .NET Framework, version 1.1, and is the first release to support developing programs for mobile devices, using ASP.NET or the .NET Compact Framework. The Visual C++ compiler's standards-compliance improved, especially in the area of partial template specialization. Visual C++ Toolkit 2003 is a free version of the same C++ compiler shipped with Visual Studio .NET 2003 without the IDE, though As of 2010 it is no longer available and the Express Editions have superseded it. The internal version number of Visual Studio .NET 2003 is version 7.1 while the file format version is 8.0.[56]

Visual Studio .NET 2003 shipped in four editions: Academic, Professional, Enterprise Developer, and Enterprise Architect. The Visual Studio .NET 2003 Enterprise Architect edition includes an implementation of Microsoft Visio 2002's modeling technologies, including tools for creating Unified Modeling Language-based visual representations of an application's architecture, and a powerful Object-Role Modeling (ORM) and logical database-modeling solution. "Enterprise Templates" were also introduced, to help larger development teams standardize coding styles and enforce policies around component usage and property settings.

Service Pack 1 was released September 13, 2006.[57]

Visual Studio 2005

Visual Studio 2005, codenamed Whidbey (a reference to Whidbey Island in Puget Sound), was released online in October 2005 and to retail stores a few weeks later. Microsoft removed the ".NET" moniker from Visual Studio 2005 (as well as every other product with .NET in its name), but it still primarily targets the .NET Framework, which was upgraded to version 2.0. It is the last version available for Windows 2000. Visual Studio 2005's internal version number is 8.0 while the file format version is 9.0.[56] Microsoft released Service Pack 1 for Visual Studio 2005 on 14 December 2006.[58] An additional update for Service Pack 1 that offers Windows Vista compatibility was made available on 3 June 2007.[59]

Visual Studio 2005 was upgraded to support all the new features introduced in .NET Framework 2.0, including generics and ASP.NET 2.0. The IntelliSense feature in Visual Studio was upgraded for generics and new project types were added to support ASP.NET web services. Visual Studio 2005 also includes a local web server, separate from IIS, that can host ASP.NET applications during development and testing. It also supports all SQL Server 2005 databases. Database designers were upgraded to support the ADO.NET 2.0, which is included with .NET Framework 2.0. C++ also got a similar upgrade with the addition of C++/CLI which is slated to replace the use of Managed C++.[60] Other new features of Visual Studio 2005 include the "Deployment Designer" which allows application designs to be validated before deployments, an improved environment for web publishing when combined with ASP.NET 2.0 and load testing to see application performance under various sorts of user loads. Visual Studio 2005 also added extensive 64-bit support. While the development environment itself is only available as a 32-bit application, Visual C++ 2005 supports compiling for x86-64 (AMD64 and Intel 64) as well as IA-64 (Itanium).[61] The Platform SDK included 64-bit compilers and 64-bit versions of the libraries.

Microsoft also announced Visual Studio Tools for Applications as the successor to Visual Basic for Applications (VBA) and VSA (Visual Studio for Applications). VSTA 1.0 was released to manufacturing along with Office 2007. It is included with Office 2007 and is also part of the Visual Studio 2005 SDK. VSTA consists of a customized IDE, based on the Visual Studio 2005 IDE, and a runtime that can be embedded in applications to expose its features via the .NET object model. Office 2007 applications continue to integrate with VBA, except for InfoPath 2007 which integrates with VSTA. Version 2.0 of VSTA ( based on Visual Studio 2008) was released in April, 2008.[62] It is significantly different from the first version, including features such as dynamic programming and support for WPF, WCF, WF, LINQ, and .NET 3.5 Framework.

Visual Studio 2008

Visual Studio 2008 Logo

Visual Studio 2008,[63] and Visual Studio Team System 2008[64][65] codenamed Orcas, were released to MSDN subscribers on 19 November 2007 alongside .NET Framework 3.5. The codename Orcas is, like Whidbey, a reference to an island in Puget Sound, Orcas Island. The source code for the Visual Studio 2008 IDE will be available under a shared source license to some of Microsoft's partners and ISVs.[66] Microsoft released Service Pack 1 for Visual Studio 2008 on 11 August 2008.[67] The internal version number of Visual Studio 2008 is version 9.0 while the file format version is 10.0.

Visual Studio 2008 is focused on development of Windows Vista, 2007 Office system, and Web applications. For visual design, a new Windows Presentation Foundation visual designer and a new HTML/CSS editor influenced by Microsoft Expression Web are included. J# is not included. Visual Studio 2008 requires .NET 3.5 Framework and by default configures compiled assemblies to run on .NET Framework 3.5, but it also supports multi-targeting which lets the developers choose which version of the .NET Framework (out of 2.0, 3.0, 3.5, Silverlight CoreCLR or .NET Compact Framework) the assembly runs on. Visual Studio 2008 also includes new code analysis tools, including the new Code Metrics tool (only in Team Edition and Team Suite Edition).[68] For Visual C++, Visual Studio adds a new version of Microsoft Foundation Classes (MFC 9.0) that adds support for the visual styles and UI controls introduced with Windows Vista.[69] For native and managed code interoperability, Visual C++ introduces the STL/CLR, which is a port of the C++ Standard Template Library (STL) containers and algorithms to managed code. STL/CLR defines STL-like containers, iterators and algorithms that work on C++/CLI managed objects.[70][71]

Visual Studio 2008 features include an XAML-based designer (codenamed Cider), workflow designer, LINQ to SQL designer (for defining the type mappings and object encapsulation for SQL Server data), XSLT debugger, JavaScript Intellisense support, JavaScript Debugging support, support for UAC manifests, a concurrent build system, among others.[72] It ships with an enhanced set of UI widgets, both for Windows Forms and WPF. It also includes a multithreaded build engine (MSBuild) to compile multiple source files (and build the executable file) in a project across multiple threads simultaneously. It also includes support for compiling PNG compressed icon resources introduced in Windows Vista. An updated XML Schema designer will ship separately some time after the release of Visual Studio 2008.[73]

The Visual Studio debugger includes features targeting easier debugging of multi-threaded applications. In debugging mode, in the Threads window, which lists all the threads, hovering over a thread will display the stack trace of that thread in tooltips.[74] The threads can directly be named and flagged for easier identification from that window itself.[75] In addition, in the code window, along with indicating the location of the currently executing instruction in the current thread, the currently executing instructions in other threads are also pointed out.[75][76] The Visual Studio debugger supports integrated debugging of the .NET 3.5 Framework Base Class Library (BCL) which can dynamically download the BCL source code and debug symbols and allow stepping into the BCL source during debugging.[77] As of 2010 a limited subset of the BCL source is available, with more library support planned for later.

Visual Studio 2010

On April 12, 2010, Microsoft released Visual Studio 2010, codenamed Dev10, and .NET Framework 4.[78][79][80]

Visual Studio 2010 features a new UI developed using WPF

Visual Studio 2010 IDE has been redesigned which, according to Microsoft, clears the UI organization and "reduces clutter and complexity."[81] The new IDE better supports multiple document windows and floating tool windows,[81] while offering better multi-monitor support. The IDE shell has been rewritten using the Windows Presentation Foundation (WPF),[82] whereas the internals have been redesigned using Managed Extensibility Framework (MEF) that offers more extensibility points than previous versions of the IDE that enabled add-ins to modify the behavior of the IDE.[83] However, the ability to customize the layout, content and position of toolbars and menus is limited in Visual Studio 2010.[84]

The new multi-paradigm programming language ML-variant F# forms part of Visual Studio 2010;[85] as do M, the textual modeling language, and Quadrant, the visual model designer, which are a part of the Oslo initiative.[86]

Visual Studio 2010 comes with .NET Framework 4 and supports developing applications targeting Windows 7.[81] It supports IBM DB2 and Oracle databases, in addition to Microsoft SQL Server.[81] It has integrated support for developing Microsoft Silverlight applications, including an interactive designer.[81] Visual Studio 2010 offers several tools to make parallel programming simpler: in addition to the Parallel Extensions for the .NET Framework and the Parallel Patterns Library for native code, Visual Studio 2010 includes tools for debugging parallel applications. The new tools allow the visualization of parallel Tasks and their runtime stacks.[87] Tools for profiling parallel applications can be used for visualization of thread wait-times and thread migrations across processor cores.[88] Intel and Microsoft have jointly pledged support for a new Concurrency Runtime in Visual Studio 2010[89] and Intel has launched parallelism support in Parallel Studio as an add-on for Visual Studio.[90]

The Visual Studio 2010 code editor now highlights references; whenever a symbol is selected, all other usages of the symbol are highlighted.[91] It also offers a Quick Search feature to incrementally search across all symbols in C++, C# and VB.NET projects. Quick Search supports substring matches and camelCase searches.[91] The Call Hierarchy feature allows the developer to see all the methods that are called from a current method as well as the methods that call the current one.[91] IntelliSense in Visual Studio supports a consume-first mode which developers can opt into. In this mode, IntelliSense will not auto-complete identifiers; this allows the developer to use undefined identifiers (like variable or method names) and define those later. Visual Studio 2010 can also help in this by automatically defining them, if it can infer their types from usage.[91]

Visual Studio 2010 features a new Help System replacing the MSDN Library viewer. The Help System is no longer based on Microsoft Help 2 and does not use Microsoft Document Explorer. Dynamic help containing links to related help topics based on where the developer was in the IDE has been removed in the shipping product,[92] but can be added back using a download from Microsoft.[93]

Visual Studio 2010 no longer support development for Windows Mobile prior to Windows Mobile 7.

Visual Studio Ultimate 2010

Visual Studio Ultimate 2010 (formerly Team System 2010), codenamed Rosario.[94] It includes new modeling tools,[95] such as the Architecture Explorer, which graphically displays projects and classes and the relationships between them.[96][97] It supports UML activity diagram, component diagram, (logical) class diagram, sequence diagram, and use case diagram.[97] Visual Studio Ultimate 2010 also includes Test Impact Analysis which provides hints on which test cases are impacted by modifications to the source code, without actually running the test cases.[98] This speeds up testing by avoiding running unneeded test cases.

Visual Studio Ultimate 2010 also includes a Historical Debugger for managed code called IntelliTrace. Unlike the current debugger, that records only the currently-active stack, IntelliTrace records all events like prior function calls, method parameters, events, exceptions etc. This allows the code execution to be rewound in case a breakpoint wasn't set where the error occurred.[99] IntelliTrace will cause the application to run slower than the current debugger, and will use more memory as additional data needs to be recorded. Microsoft allows configuration of how much data should be recorded, in effect allowing developers to balance speed of execution and resource usage. The Lab Management component of Visual Studio Ultimate 2010 uses virtualization to create a similar execution environment for testers and developers. The virtual machines are tagged with checkpoints which can later be investigated for issues, as well as to reproduce the issue.[100] Visual Studio Ultimate 2010 also includes the capability to record test runs that capture the specific state of the operating environment as well as the precise steps used to run the test. These steps can then be played back to reproduce issues.[101]

Pre-installed virtual machines

Microsoft is offering virtual machines with Visual Studio Team System 2008 and 2005 pre-installed in the documented Virtual Hard Disk format for trial use.[102]

References

  1. Keith Yedlin (April 13, 2010). "Parallel Computing: Why You Need It and What We're Doing About It". Toronto. 
  2. http://research.microsoft.com/en-us/um/cambridge/projects/fsharp/
  3. Visual Studio 2005 SDK. "Visual Studio Development Environment Model". Microsoft. http://msdn.microsoft.com/en-us/library/bb165114(VS.80).aspx. Retrieved 2008-01-01. 
  4. Visual Studio 2005 SDK. "VSPackages and Managed Package Framework (MPF)". Microsoft. http://msdn.microsoft.com/en-us/library/bb166554(VS.80).aspx. Retrieved 2008-01-01. 
  5. 5.0 5.1 5.2 5.3 Vijay Mehta. "Extending Visual Studio 2005". CodeGuru. http://www.codeguru.com/csharp/.net/net_vs_addins/visualstudioadd-ins/article.php/c11835/. Retrieved 2008-01-01. 
  6. 6.0 6.1 6.2 Visual Studio 2005 SDK. "Language Service Essentials". Microsoft. http://msdn.microsoft.com/en-us/library/bb166391(VS.80).aspx. Retrieved 2008-01-01. 
  7. Visual Studio SDK. "Babel Package Overview". Microsoft. http://msdn.microsoft.com/en-us/library/bb165670(VS.80).aspx. Retrieved 2008-01-01. 
  8. Visual Studio SDK. "Managed Language Services overview". Microsoft. http://msdn.microsoft.com/en-us/library/bb166360(VS.80).aspx. Retrieved 2008-01-01. 
  9. 9.0 9.1 Alin Constantin. "Microsoft Source Code Control Interface". http://alinconstantin.dtdns.net/webdocs/scc/MSSCCI.htm. Retrieved 2008-01-03. 
  10. Visual Studio SDK. "Source Control Plug-ins". MSDN. http://msdn.microsoft.com/en-us/library/bb166170(VS.80).aspx. Retrieved 2008-01-03. 
  11. 11.0 11.1 11.2 11.3 "Visual Studio Extensibility". CoDe Magazine. http://www.code-magazine.com/focus/vsx/. Retrieved 2008-01-01. 
  12. 12.0 12.1 Scott Guthrie. "Nice VS 2008 Code Editing Improvements". http://weblogs.asp.net/scottgu/archive/2007/07/28/nice-vs-2008-code-editing-improvements.aspx. Retrieved 2007-12-31. 
  13. Scott Guthrie. "VS 2008 JavaScript IntelliSense". http://weblogs.asp.net/scottgu/archive/2007/06/21/vs-2008-javascript-intellisense.aspx. Retrieved 2007-12-31. 
  14. Scott Guthrie. "VS 2008 Web Designer and CSS Support". http://weblogs.asp.net/scottgu/archive/2007/07/25/vs-2008-web-designer-and-css-support.aspx. Retrieved 2007-12-31. 
  15. 15.0 15.1 "Visual Studio .NET - Top 10 Code Editor Tips and Tricks". MSDN TV. http://msdn.microsoft.com/msdntv/transcripts/20030327VSNETABTranscript.aspx. Retrieved 2007-12-31. 
  16. "Background compilation, part 1". http://www.panopticoncentral.net/archive/2004/02/25/276.aspx. Retrieved 2007-12-31. 
  17. 17.0 17.1 Matthew Gertz. "Scaling Up: The Very Busy Background Compiler". MSDN Magazine. http://msdn.microsoft.com/msdnmag/issues/05/06/AdvancedBasics/. Retrieved 2007-12-31. 
  18. Thomas F. Abraham. "Background Compilation in Visual Studio 2002, 2003 and 2005". http://blogs.digineer.com/blogs/tabraham/archive/2005/12/09/14.aspx. Retrieved 2007-12-31. 
  19. "Attaching to Running Processes". MSDN. http://msdn.microsoft.com/en-us/library/3s68z0b3(VS.80).aspx. Retrieved 2007-12-31. 
  20. "Dumps". MSDN. http://msdn.microsoft.com/en-us/library/d5zhxt22(VS.80).aspx. Retrieved 2007-12-31. 
  21. "Breakpoint Overview". MSDN. http://msdn.microsoft.com/en-us/library/5557y8b4(VS.80).aspx. Retrieved 2007-12-31. 
  22. 22.0 22.1 "Code Stepping Overview". MSDN. http://msdn.microsoft.com/en-us/library/ek13f001(VS.80).aspx. Retrieved 2007-12-31. 
  23. "Edit and Continue". MSDN. http://msdn.microsoft.com/en-us/library/bcew296c(VS.80).aspx. Retrieved 2007-12-31. 
  24. "Debugging at Design Time". MSDN. http://msdn.microsoft.com/en-us/library/83hd8f1e(VS.80).aspx. Retrieved 2007-12-31. 
  25. "MSDN TV: Introducing "Cider" - The Visual Studio Designer for WPF ("Avalon")". MSDN TV. http://www.microsoft.com/downloads/details.aspx?FamilyId=950D1EEC-5D4F-4A15-8250-D26E24B80A5D. Retrieved 2008-01-01. 
  26. http://www.asp.net/mvc/
  27. http://www.asp.net/DynamicData/
  28. "Team Explorer 2005 (.img file)". Microsoft. http://download.microsoft.com/download/2/a/d/2ad44873-8ccb-4a1b-9c0d-23224b3ba34c/VSTFClient.img. Retrieved 2007-03-05. 
  29. "Visual Studio Team System 2008 Team Explorer". Microsoft. http://www.microsoft.com/downloads/details.aspx?familyid=0ed12659-3d41-4420-bbb0-a46e51bfca86&displaylang=en. Retrieved 2007-03-05. 
  30. "How to use the Server Explorer in Visual Studio .NET and Visual Studio 2005". Microsoft. http://support.microsoft.com/kb/316649. Retrieved 2008-01-01. 
  31. "Dotfuscator Community Edition 4.0". Msdn.microsoft.com. http://msdn.microsoft.com/en-us/library/ms227240.aspx. Retrieved 2009-09-06. 
  32. "Microsoft and PreEmptive Solutions to Provide Application Feature Monitoring, Usage Expiry and Tamper Defense in Visual Studio 2010: Post-build utility utilizes software plus services and instrumentation to improve application security, portfolio management and usability". Microsoft.com. 2008-10-27. http://www.microsoft.com/Presspass/press/2008/oct08/10-27PreEmptivePR.mspx. Retrieved 2009-09-06. 
  33. The Visual Studio Gallery gets a little more community friendly
  34. Visual C++ Team. "ISO C Standard Update". MSDN Blogs. http://blogs.msdn.com/vcblog/archive/2007/11/05/iso-c-standard-update.aspx. Retrieved 2008-01-02. 
  35. Visual C++ team. "Update On The C++-0x Language Standard". MSDN Blogs. http://blogs.msdn.com/vcblog/archive/2007/06/04/update-on-the-c-0x-language-standard.aspx. 
  36. "Compiler Intrinsics". MSDN. http://msdn.microsoft.com/en-us/library/26td21ds(VS.80).aspx. Retrieved 2008-01-02. 
  37. "OpenMP in Visual C++". MSDN. http://msdn.microsoft.com/en-us/library/tt15eb9t(VS.80).aspx. Retrieved 2008-01-02. 
  38. "Visual C# (MSDN)". MSDN. http://msdn.microsoft.com/en-us/library/kx37x362.aspx. Retrieved 2009-06-01. 
  39. "A Message to the Community". MSDN. http://msdn.microsoft.com/en-us/vfoxpro/bb308952.aspx. Retrieved 2008-01-02. 
  40. De, Alan. "Visual SourceSafe: Microsoft's Source Destruction System". Highprogrammer.com. http://www.highprogrammer.com/alan/windev/sourcesafe.html. Retrieved 2009-09-06. 
  41. "INFO: Required Network Rights for the SourceSafe Directories". Support.microsoft.com. 2005-02-24. http://support.microsoft.com/kb/q131022/. Retrieved 2009-09-06. 
  42. "Microsoft Visual SourceSafe Best Practices". Msdn.microsoft.com. http://msdn.microsoft.com/en-us/library/bb509342.aspx. Retrieved 2009-09-06. 
  43. "Buy Microsoft Visual SourceSafe 6 (324-00269) :: eCostSoftware.com - UK Software Supplier". eCostSoftware.com. http://www.ecostsoftware.com/microsoft/microsoft-visual-sourcesafe-6_p2051. Retrieved 2009-09-06. 
  44. 44.0 44.1 44.2 "Visual Studio Editions". Microsoft. http://www.microsoft.com/visualstudio/en-us/products. Retrieved 2010-06-22. 
  45. "How to: Configure Visual C++ Projects to Target 64-Bit Platforms". Microsoft. http://msdn.microsoft.com/en-us/library/9yb4317s(v=VS.100).aspx. Retrieved 2010-08-19. 
  46. "Visual Studio Express". Microsoft. http://www.microsoft.com/express/. Retrieved 2010-06-22. 
  47. Massi, Beth. "Rapid Business Application Development with Visual Studio LightSwitch". Microsoft. http://blogs.msdn.com/b/bethmassi/archive/2010/08/03/rapid-business-application-development-with-visual-studio-lightswitch.aspx. Retrieved 2010-08-04. 
  48. 48.0 48.1 48.2 "VS 2010 Licensing Changes". Microsoft. http://blogs.msdn.com/b/bharry/archive/2009/10/19/vs-2010-licensing-changes.aspx. Retrieved 2010-06-22. 
  49. "A Hitchhiker's Guide to Visual Studio 2008, Part I". Microsoft. http://blogs.msdn.com/robcaron/archive/2007/07/26/4069573.aspx. Retrieved 2010-06-22. 
  50. "Norman Guadagno: Announcing Visual Studio Team System 2010". Channel9. Microsoft. September 29, 2008. http://channel9.msdn.com/posts/Dan/Norman-Guadagno-Announcing-Visual-Studio-Team-System-2010/. Retrieved 2008-09-30. 
  51. "What I’m doing in Redmond". Paul Thurrott. http://windowsphonesecrets.com/2010/05/18/what-im-doing-in-redmond/. Retrieved 2010-05-19. 
  52. "System Requirements (Visual Studio 6.0)". MSDN. http://msdn.microsoft.com/en-us/vstudio/aa700918.aspx. Retrieved 2008-01-02. 
  53. "Features by Edition". Microsoft. http://web.archive.org/web/20040215012731/msdn.microsoft.com/vstudio/previous/vs6/features/default.aspx. 
  54. "System Requirements (Visual Studio .NET)". MSDN. http://msdn.microsoft.com/en-us/vstudio/aa700866.aspx. Retrieved 2008-01-02. 
  55. "Visual Studio .NET 2002 SP1". Microsoft. http://www.microsoft.com/downloads/details.aspx?FamilyID=c41d8159-b42f-4d06-a797-e510494976ee&displaylang=en. Retrieved 2008-01-02. 
  56. 56.0 56.1 "Hacking Visual Studio". http://www.ondotnet.com/pub/a/dotnet/excerpt/vshacks_chap1/index.html?page=4. Retrieved 2008-01-01. 
  57. "Microsoft Visual Studio .NET 2003 Service Pack 1". Microsoft. http://www.microsoft.com/downloads/details.aspx?familyid=69D2219F-CE82-46A5-8AEC-072BD4BB955E&displaylang=en. Retrieved 2008-01-02. 
  58. "Visual Studio 2005 Service Pack 1". Microsoft. http://www.microsoft.com/downloads/details.aspx?FamilyID=BB4A75AB-E2D4-4C96-B39D-37BAF6B5B1DC&displaylang=en. Retrieved 2008-01-01. 
  59. "Visual Studio Service Pack 1 Update". http://www.microsoft.com/downloads/details.aspx?FamilyID=90e2942d-3ad1-4873-a2ee-4acc0aace5b6&displaylang=en. Retrieved 2008-01-01. 
  60. "New Language Features in Visual C++". Visual Studio 2005 Visual C++ Language Reference. MSDN. http://msdn.microsoft.com/en-us/library/xey702bw(VS.80).aspx. Retrieved 2006-12-28. 
  61. "64-bit and Visual Studio 2005". April 11, 2006. http://blogs.msdn.com/deeptanshuv/archive/2006/04/11/573795.aspx. Retrieved 2006-12-28. 
  62. VSTA vs VSTO in Software Development Kits. In the latest MSDN Flash email I just received, it announces the release of Visual Studio Tools for Applications 2.0 (VSTA).
  63. "Microsoft Details Dynamic IT Strategy at Tech-Ed 2007". http://www.earthtimes.org/articles/show/news_press_release,115898.shtml. Retrieved 2007-06-04. 
  64. Beehler, Jeff (2007-11-19). "Visual Studio Team System 2008 ships!". Jeff Beehler's Blog. MSDN Blogs. http://blogs.msdn.com/b/jeffbe/archive/2007/11/19/visual-studio-team-system-2008-ships.aspx. Retrieved 2010-06-25. 
  65. "Microsoft Windows Visual Studio Team System 2008". MSDN Search. MSDN Social. 2010. http://social.msdn.microsoft.com/Search/en-US?query=Microsoft%20Windows%20Visual%20Studio%20Team%20System%202008&resultsLang=en-GB&ac=8. Retrieved 2010-06-25. 
  66. "Microsoft to Give Partners More Access to Orcas IDE Code". http://www.eweek.com/article2/0,1895,2212505,00.asp. Retrieved 2007-11-06. 
  67. "Download Details: Microsoft Visual Studio 2008 Service Pack 1 (exe)". http://www.microsoft.com/downloads/details.aspx?FamilyID=fbee1648-7106-44a7-9649-6d9f6d58056e&DisplayLang=en. Retrieved 2008-08-11. 
  68. Darryl K. Taft. "Microsoft Pushes Secure, Quality Code". eWeek. http://www.eweek.com/article2/0,1759,2192515,00.asp?kc=EWRSS03119TX1K0000594. Retrieved 2007-10-06. 
  69. Kirants. "Whats New in MFC 9.0 (Orcas)". CodeGuru. http://www.codeguru.com/cpp/controls/buttonctrl/advancedbuttons/article.php/c14407/. Retrieved 2008-01-02. 
  70. Nikola Dudla. "What Is STL/CLR?". MSDN Blogs. http://blogs.msdn.com/nikolad/archive/2006/06/16/STLCLR-Intro.aspx. Retrieved 2008-01-02. 
  71. Visual C++ Team. "Libraries Work In Orcas". MSDN Blogs. http://blogs.msdn.com/vcblog/archive/2006/08/02/686894.aspx. Retrieved 2008-01-02. 
  72. "Download Visual Studio 03/07 CTP". http://blog.csharp-online.net/?p=108. Retrieved 2007-06-14. 
  73. "XSD Designer in Visual Studio". http://www.msdner.com/dev-archive/204/153-1021-2046403.shtm. Retrieved 2008-01-01. 
  74. S. Somasegar. "Debugging and Profiling Features in VS 2008". MSDN Blogs. http://blogs.msdn.com/somasegar/archive/2007/09/14/debugging-and-profiling-features-in-vs-2008.aspx. Retrieved 2007-07-24. 
  75. 75.0 75.1 John Robbin. "Neat New Multithreaded Debugging Features in VS 2008". http://www.wintellect.com/cs/blogs/jrobbins/archive/2007/08/01/neat-new-multithreaded-debugging-features-in-vs-2008.aspx. Retrieved 2007-09-24. 
  76. Scott Hanselman. "Multi-threaded Debugging in Visual Studio 2008". http://www.hanselman.com/blog/MultithreadedDebuggingInVisualStudio2008.aspx. Retrieved 2007-09-24. 
  77. Scott Guthrie. "Releasing the Source Code for the .NET Framework Libraries". http://weblogs.asp.net/scottgu/archive/2007/10/03/releasing-the-source-code-for-the-net-framework-libraries.aspx. Retrieved 2007-10-04. 
  78. Microsoft Releases Visual Studio 2010, .NET Framework 4
  79. Microsoft launches Visual Studio 2010 and .NET Framework 4
  80. Microsoft releases Visual Studio 2010, .Net Framework 4
  81. 81.0 81.1 81.2 81.3 81.4 "Visual Studio 2010 Team System First Look". Microsoft. http://www.microsoft.com/visualstudio/en-us/products/2010/default.mspx. Retrieved 2009-04-18. 
  82. "Writing Visual Studio 2010 shell in WPF Reflects Confidence". One .NET Way. http://www.onedotnetway.com/writing-visual-studio-2010-shell-in-wpf-reflects-confidence/. Retrieved 2009-04-18. 
  83. Carlos Quintero. "Visual Studio 2010 Extensibility moving beyond add-ins and packages". http://msmvps.com/blogs/carlosq/archive/2008/10/26/visual-studio-2010-extensibility-moving-beyond-add-ins-and-packages.aspx. Retrieved 2009-04-18. 
  84. Limited ability to customize VS 2010 IDE
  85. "F# to ship as part of Visual Studio 2010". http://blogs.msdn.com/dsyme/archive/2008/12/10/fsharp-to-ship-as-part-of-visual-studio-2010.aspx. Retrieved 2008-12-10. 
  86. "Microsft details Oslo's modeling language, tools". SDTimes. http://www.sdtimes.com/link/32957. Retrieved 2009-04-19. 
  87. Daniel Moth. "Debugging Parallel applications with VS2010". http://www.danielmoth.com/Blog/2008/11/debugging-parallel-applications-with.html. Retrieved 2008-04-18. 
  88. "More support for parallelism in the next version of Visual Studio". MSDN. http://msdn.microsoft.com/en-us/magazine/cc817396.aspx. Retrieved 2009-04-23. 
  89. David Worthington. "SD Times: Intel, Microsoft converge on parallel computing". http://www.sdtimes.com/INTEL_MICROSOFT_CONVERGE_ON_PARALLEL_COMPUTING/About_PARALLELPROGRAMMING_and_WINDOWS_and_INTEL_and_MICROSOFT/32731. Retrieved 2008-08-20. 
  90. David Worthington. "Intel addresses development life cycle with Parallel Studio". http://sdtimes.com/link/33497. Retrieved 2009-05-26. 
  91. 91.0 91.1 91.2 91.3 S. Somasegar. "Code Focused Development in VS 2010". http://blogs.msdn.com/somasegar/archive/2008/12/19/code-focused-development-in-vs-2010.aspx. Retrieved 2008-04-18. 
  92. Dynamic Help Removed From Visual Studio 2010
  93. "Help Viewer Power Tool". http://visualstudiogallery.msdn.microsoft.com/en-us/60a86afe-159b-4940-a22f-4fef055cbd63. Retrieved 2010-07-13. 
  94. "'Visual Studio Team System Rosario'". http://msdn.microsoft.com/en-us/vstudio/bb725993.aspx. Retrieved 2008-04-05. 
  95. "Microsoft Unveils Next Version of Visual Studio and .NET Framework". Microsoft PressPass. http://www.microsoft.com/presspass/press/2008/sep08/09-29VS10PR.mspx. Retrieved 2009-08-14. 
  96. "Doing Architecture with Team System Rosario". http://visualstudiomagazine.com/columns/article.aspx?editorialsid=2583. Retrieved 2009-04-18. 
  97. 97.0 97.1 "Visual Studio 2010 Architecture Edition". http://ajdotnet.wordpress.com/2009/03/29/visual-studio-2010-architecture-edition/. Retrieved 2009-04-18. 
  98. "Historical Debugger and Test Impact Analysis in Visual Studio Team System 2010". Channel9. http://channel9.msdn.com/posts/VisualStudio/Historical-Debugger-and-Test-Impact-Analysis-in-Visual-Studio-Team-System-2010/. Retrieved 2009-04-18. 
  99. Habib Heydarian. "What’s new in Visual Studio Team System 2010: Episode 2". http://blogs.msdn.com/habibh/archive/2008/10/01/what-s-new-in-visual-studio-team-system-2010-issue-2.aspx. Retrieved 2008-04-18. 
  100. "Visual Studio 2010 Lab Management". http://blogs.microsoft.co.il/blogs/maordavid/archive/2008/12/22/visual-studio-2010-lab-management.aspx. Retrieved 2009-04-18. 
  101. Ina Fried. "Visual Studio 2010 to come with 'black box'". CNET News. CBS Interactive Inc.. http://news.cnet.com/8301-13860_3-10052412-56.html. Retrieved 2009-04-18. 
  102. "Team Suite 2008 Virtual Machine". http://www.microsoft.com/downloads/details.aspx?FamilyID=c7a809d8-8c9f-439f-8147-948bc6957812&displaylang=en. 

External links